package online.lmds.sdmanage.main.device.dao;

import online.lmds.sdmanage.common.entity.Page;
import online.lmds.sdmanage.main.device.entity.RunLog;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.Date;
import java.util.List;

/**
 * Created by Brighten Ma on 2017/5/29.
 * 设备运行记录Dao
 */

@Repository("RunLogDao")
public interface RunLogDao {

    /**
     * 获取最新记录信息
     * @param e
     * @return
     */
    RunLog getLast(@Param("e")RunLog e);

    /**
     * 更新状态
     * @param e
     * @return
     */
    int updateStatusByUid(@Param("e")RunLog e);


    /**
     * 添加新记录
     * @param e
     * @return
     */
    int addNew(@Param("e")RunLog e);


    /**
     * 由devicUid获取所有记录
     * @param e 必须有deviceUid  可有status
     * @return
     */
    List<RunLog> list(@Param("e")RunLog e);

    /**
     *
     * @param e     必须有deviceUid  可有status
     * @param startDate 开始时间
     * @param endDate   结束时间
     * @return
     */
    List<RunLog> listBetweenDate(@Param("e")RunLog e,
                                 @Param("startDate") Date startDate,
                                 @Param("endDate")Date endDate);

}
